package com.wenwu.dao;

import java.util.List;

import org.apache.ibatis.annotations.Param;

import com.wenwu.common.bean.RelicsSurvey;
import com.wenwu.common.bean.RelicsSurveyExample;
import com.wenwu.common.bean.RelicsSurveyWithBLOBs;
import com.wenwu.common.page.PaginationVO;

public interface RelicsSurveyMapper  extends Dao {
    int countByExample(RelicsSurveyExample example);

    int deleteByExample(RelicsSurveyExample example);

    int deleteByPrimaryKey(Integer surveyId);

    int insert(RelicsSurveyWithBLOBs record);

    int insertSelective(RelicsSurveyWithBLOBs record);

    List<RelicsSurveyWithBLOBs> selectByExampleWithBLOBs(RelicsSurveyExample example);

    List<RelicsSurvey> selectByExample(RelicsSurveyExample example);

    RelicsSurveyWithBLOBs selectByPrimaryKey(Integer surveyId);

    int updateByExampleSelective(@Param("record") RelicsSurveyWithBLOBs record, @Param("example") RelicsSurveyExample example);

    int updateByExampleWithBLOBs(@Param("record") RelicsSurveyWithBLOBs record, @Param("example") RelicsSurveyExample example);

    int updateByExample(@Param("record") RelicsSurvey record, @Param("example") RelicsSurveyExample example);

    int updateByPrimaryKeySelective(RelicsSurveyWithBLOBs record);

    int updateByPrimaryKeyWithBLOBs(RelicsSurveyWithBLOBs record);

    int updateByPrimaryKey(RelicsSurvey record);
    
    /**
     * 分页条件查询
     * @param relicsSurvey
     * @param pageVo
     * @return
     */
    List<RelicsSurveyWithBLOBs> selectListByPage(@Param("relicsSurvey") RelicsSurveyWithBLOBs relicsSurvey,@Param("pageVo") PaginationVO pageVo);
    
    /**
	 * 分页查询的所有结果总数量
	 * @param relicsSurvey
	 * @param pageVo
	 * @return
	 */
	int selectTotalRecord(@Param("relicsSurvey")RelicsSurveyWithBLOBs relicsSurvey);

	/**
	 * 根据主键批量删除数据
	 * @param keyList
	 * @return
	 */
	int deleteInfoByKey(List<String> keyList);
}